package multi

import (
	"embed"
	"fmt"
	"path"
)

// / 对于多个文件和文件夹，支持嵌入为新的文件系统FS
//
//go:embed hello.txt hello1.txt
var HelloFs embed.FS //嵌入文件系统

func ReadHelloFs() {
	read, err := HelloFs.ReadFile("hello.txt")
	fmt.Println(string(read), err)
	read1, err := HelloFs.ReadFile("hello1.txt")
	fmt.Println(string(read1), err)
}

//go:embed html
var htmlFs embed.FS

func ReadDirMeta() {
	//读取文件夹dir
	dir, _ := htmlFs.ReadDir("html")
	//entry为遍历dir文件夹中的每个文件
	for _, entry := range dir {
		info, _ := entry.Info()  // 获取文件的信息
		fmt.Println(info.Name()) // 获取文件中的名字
	}
}

func ReadDirFile() {
	//读取文件夹dir
	dir, _ := htmlFs.ReadDir("html")
	//entry为遍历dir文件夹中的每个文件
	for _, entry := range dir {
		info, _ := entry.Info() // 获取文件的信息
		//使用data的ReadFile方法打开文件
		//使用path.Join拼接文件的路径
		file, err := htmlFs.ReadFile(path.Join("html", info.Name()))
		//输出内容
		fmt.Println(string(file), err)
		fmt.Println()
	}
}
